package com.jinzhi.jzweb.domain;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

import com.jinzhi.common.vo.PageInfoVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


/**
 * 
 * <pre>
 * 课程订单表
 * </pre>
 * <small> 2024-05-13 17:00:28 | Long</small>
 */
@Data
@SuppressWarnings("serial")
@TableName("jaz_courses_order")
//这是的这里继承的基础服务类，有几个基本字段
public class JazCoursesOrderDO extends PageInfoVo implements Serializable {
	@TableId
	private Long id;

    /** 课程id */
    @TableField("courses_id")
    @ApiModelProperty(value = "课程id")
    private Long coursesId;

    /** 用户id */
    @TableField("user_id")
    @ApiModelProperty(value = "用户id")
    private Long userId;

    /** 创建人id */
    @TableField("creater_id")
    private Long createrId;

    /** 创建时间 */
    @TableField("creater_date")
    private Date createrDate;

    /** 修改人id */
    @TableField("updater_id")
    private Long updaterId;

    /** 修改时间 */
    @TableField("update_date")
    private Date updateDate;

    /** 商户订单编号 */
    @TableField("order_no")
    @ApiModelProperty(value = "商户订单编号")
    private String orderNo;

    /** 订单名称 */
    @TableField("order_name")
    @ApiModelProperty(value = "订单名称")
    private String orderName;

    /** 订单状态:(未支付、支付成功、用户已取消)*/
    @ApiModelProperty(value = "订单状态:(未支付、支付成功、用户已取消)")
    @TableField("status")
    private String status;

    /** 金额*/
    @ApiModelProperty(value = "金额")
    @TableField("total_fee")
    private BigDecimal totalFee;

    @ApiModelProperty(value = "openid")
    @TableField(exist = false)
    private String openid;

    /** 微信支付订单号*/
    @ApiModelProperty(value = "微信支付订单号")
    @TableField("transaction_id")
    private String transactionId;

    /** 地址id */
    @ApiModelProperty(value = "地址id")
    @TableField("address_id")
    private Long addressId;

    /** 订单计数器  */
    @ApiModelProperty(value = "订单计数器 ")
    @TableField("no_num")
    private Integer noNum;

    /** 课程订单编号（下单时间 + 00 + 订单计数器）  */
    @ApiModelProperty(value = "课程订单编号（下单时间 + 00 + 订单计数器） ")
    @TableField("courses_no")
    private String coursesNo;

    /** 订单地址信息对象 */
    @ApiModelProperty(value = "订单地址信息对象")
    @TableField(exist = false)
    private JazShippingAddressDO jazShippingAddressDO;

    /** 课程信息对象 */
    @ApiModelProperty(value = "课程信息对象")
    @TableField(exist = false)
    private JazCoursesDO jazCoursesDO;

    /** 实付金额 */
    @TableField(exist = false)
    private BigDecimal shareMoney;

    /** 应付金额 */
    @TableField(exist = false)
    private BigDecimal accountMoney;
    /** 课程名 */
    @TableField(exist = false)
    private String coursesName;

    /** 用户姓名 */
    @TableField(exist = false)
    private String userName;

    //手机号
    @TableField(exist = false)
    private String phone;

    /** 是否阅读（0否、1是） */
    @ApiModelProperty(value = "是否阅读（0否、1是）")
    @TableField("is_read")
    private Integer isRead;

    /** 是否评价（0否、1是） **/
    @TableField("has_comment")
    @ApiModelProperty(value = " 是否评价（0否、1是）")
    private Integer hasComment;

}
